package cn.tedu.fei;

import org.junit.Before;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class FeiConfig {

    @Bean
    public SnakeLance lance1(){
        return new SnakeLance();
    }
    @Bean
    public SnakeLance lance2(){
        return new SnakeLance();
    }

    // @Bean标记的方法的参数列表中如果声明了参数
    // Spring会自动从Spring容器中寻找匹配类型的对象,为这个参数赋值
    // 也就是上面保存到Spring容器中的lance对象,会自动赋值给参数sl
    // 在方法内部这个sl又赋值给了张飞,所以返回的张飞是带着丈八蛇矛的
    @Bean
    public ZhangFei zhangFei(SnakeLance lance1){
        ZhangFei zhangFei=new ZhangFei();
        zhangFei.setSnakeLance(lance1);
        return zhangFei;
    }


}
